Digital systems, such as data processing systems, frequently require that different devices in the systems communicate with one another over interconnecting cables or other links, such as fiber-optic channels. For example, a secondary storage facility used in a data processing system generally comprises a controller and one or more drives connected to the controller. These different devices must communicate with each other.
Typical drives include, but are not limited to, direct access memory devices, such as magnetic disk, tape or drum memories, and newer magnetic bubble memories. These secondary storage facilities, especially facilities using magnetic disk memory devices as the drives, have become very sophisticated in recent years. Unfortunately, in efforts to increase performance, interconnections between controllers and drives (including communications codes) have increased in complexity and cost.
Part of the cost and complexity is a result of the fact that different drives operate at different data (i.e., bit) transfer rates. For a controller to communicate with a drive, it must be able to receive (and send) information at the drive's transfer rate. And if a drive is disconnected and replaced by one designed for a different transfer rate, the controller must accommodate the new drive, also. Moreover, if a controller is connected to multiple drives, it must be able to operate, in turn, at the appropriate rate for each.
One approach to this problem is to use in the controller a wide-band phase-locking loop (PLL). Such PLL's, however, are complicated and expensive, and they require time to home in on frequency (and phase) the received signal.
Another approach has been for the drive to send to the controller a separate clocking signal, which the controller can then use both for decoding data signals from the drive and for clocking the controller's transmissions to the drive. This approach, however, requires that the controller-drive interconnection include a separate channel dedicated to the clocking signal.
Further, as data processing systems have become more complex and the topology of data processing systems has become more elaborate, so-called "ground loop" problems have become significant and troublesome. There are two primary causes of ground loop currents. The first is that electrical fields from power cables and power distribution lines induce a.c. potentials in the cables which run between different units. The second is that two or more devices fed from a common a.c. power source will be out of phase with each other due to different phase lags in their power distribution. Thus, their "grounds" are not at precisely the same potential. The resulting currents between devices, along the ground conductors of the interconnection cables, can interfere with and degrade the operation of the line drivers and receivers at the cable terminations, adversely affecting communications over the cables. Further, such ground currents can cause or allow electromagnetic energy to radiate from the cable. That radiation may violate government regulations or industry standards, and it may interfere with the operation of other equipment.
It also an object of the invention that such encoding technique permit a.c. coupling of signals transmitted between transmitting and receiving devices.
Therefore, it is an object of this invention to provide a digital encoding technique and apparatus therefor, adapted for use in a secondary storage facility (and, more particularly, in an interconnection between controllers and drives in such a facility), which is inexpensive and simplifies the interconnection between drives and controllers.
Still another object of this invention is to provide an encoding technique which permits self-clocking, rapidly synchronizing communications between devices at any rate within a broad range of rates, without need for the transmission of a separate clocking signal and without prior knowledge of the bit rate of the transmitting device.
A further object of the invention is to provide an encoding technique which is compatible with both electrical and fiber-optic implementations.
Another object of this invention is to provide an encoding technique and device interconnection which eliminates or at least substantially reduces ground loop problems when the interconnection is electrical.
It is also an object of the invention that such encoding technique permit a.c. coupling of signals transmitted between transmitting and receiving devices.
Still another object of this invention is to provide an encoding technique and apparatus which is capable of permitting communications between a controller and drive at high bit transfer rates.